package com.lightkits.wms.domain.pickreport.service;

import com.lightkits.framework.common.model.CheckResult;
import com.lightkits.framework.common.model.IResult;
import com.lightkits.wms.domain.pickreport.ExecuteResModel;
import com.lightkits.wms.dto.pickreport.CancelPickReportRequestType;
import com.lightkits.wms.dto.pickreport.ExecutePickReportRequestType;

/**
 * PickReportDomainService
 *
 * @author zhuangwei.zheng@hand-china.com
 * Created on 2019/5/8 15:55
 */
public interface PickReportDomainService {
    IResult checkParam(ExecutePickReportRequestType request);

    CheckResult<ExecuteResModel> executePickReport(ExecutePickReportRequestType request);

    void startTransaction(ExecuteResModel data);

    IResult checkCancelParam(CancelPickReportRequestType request);

    CheckResult<ExecuteResModel> cancelPickReport(CancelPickReportRequestType request);

    void cancelTransaction(ExecuteResModel data);
}
